﻿// Copyright (c) Vitaly Kamiansky. All rights reserved. 
// See License.txt in the project root.

using System;

namespace Property.Reloaders
{
    public abstract class OutReloader<T> : Reloader<T>
    {
        public OutReloader(Action<T> applyValue, Action<bool> applyStatus)
        {
            if (applyValue == null) throw new ArgumentNullException("applyValue");
            if (applyStatus == null) throw new ArgumentNullException("applyStatus");

            _ApplyValue = applyValue;
            _ApplyStatus = applyStatus;
        }

        //=//

        protected readonly Action<T> _ApplyValue;

        protected readonly Action<bool> _ApplyStatus;
    }
}
